/** @type {import('ts-jest').JestConfigWithTsJest} **/
export default {
  // 指定使用 ts-jest 预设，这样 jest 就能处理 TypeScript 代码了。
  preset: 'ts-jest',
  // 设置测试环境为 jsdom，它模拟了浏览器的 DOM 环境，适合测试操作 DOM 元素
  // 如果不需要操作 DOM，也可以选择 node 环境等。
  testEnvironment: 'node',
  // 定义测试文件的查找根目录，这里设置为项目的 src 目录（你可以根据实际项目结构调整）
  // rootDir: '.',
  // roots: ['<rootDir>/src'],
  // 告诉 jest 如何处理不同类型的文件，这里配置了对 .ts 和 .tsx 文件使用 ts-jest 进行转换。
  transform: {
    '^.+.tsx?$': ['ts-jest', {}]
  },
  // 指定了模块文件支持的扩展名，涵盖了常见的 TypeScript、JavaScript 以及一些特殊情况的扩展名。
  moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json', 'node']
}
